Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

IC - 20200226 #361

Merged
merged 3 commits into from
Feb 28, 2020
Merged

IC - 20200226 #361

merged 3 commits into from
Feb 28, 2020

Conversation

astrogeco
Copy link
Contributor

Describe the contribution
Fix #338

Testing performed
Steps taken to test the contribution:

Current CI passes
Test 4 in Enhanced CI in https://github.com/nasa/cFS/pull/40

Expected behavior changes
#338 - Fixes memset bug in src/os/posix/osapi.c

System(s) tested on
CI: Ubuntu 18.04

Additional context
N/A

Third party code
N/A

Contributor Info - All information REQUIRED for consideration of pull request
Gerardo E. Cruz-Ortiz - NASA/GSFC

stanislaw and others added 2 commits January 2, 2020 19:05
Calling memset too late after assigning the `sem` variable in the code of
`OS_BinSemCreate_Impl` caused the data pointed to by `sem` to get corrupted.

The issue was not caught by the existing test suite for POSIX OSAL when running
on Linux. However running the test suite on macOS revealed the anomalies
in the behavior of `pthread_cond_destroy()` which was working on the corrupted
memory as was demonstrated in:

Calling pthread_cond_destroy results in “Function not implemented” ENOSYS on macOS,
https://stackoverflow.com/questions/59560940/calling-pthread-cond-destroy-results-in-function-not-implemented-enosys-on-mac?noredirect=1#comment105301077_59560940

The original commit that introduced the issue is:

bfa7a33
Fix #337, fix memory corruption produced by misplaced memset()
@astrogeco astrogeco mentioned this pull request Feb 26, 2020
@astrogeco astrogeco requested a review from a user February 26, 2020 21:41
@astrogeco
Copy link
Contributor Author

@acudmore does this need to be tested on other platforms?

@astrogeco
Copy link
Contributor Author

CCB 20200226 - Check if tests needed on other platforms. If CI tests are enough then approve.

Copy link

@ghost ghost left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me. If it passes the CI build, it should not need to be tested on any other platform.

@astrogeco astrogeco added the CCB:Approved Indicates code review and approval by community CCB label Feb 28, 2020
@astrogeco astrogeco merged commit a1e9dbf into master Feb 28, 2020
@skliper skliper added this to the 5.1.0 milestone Jun 1, 2020
jphickey pushed a commit to jphickey/osal that referenced this pull request Aug 10, 2022
jphickey pushed a commit to jphickey/osal that referenced this pull request Aug 10, 2022
Fixes nasa#361, nasa#373, nasa#374, nasa#381
Code reviewed and approved at 20191023 and 30 CCBs
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CCB:Approved Indicates code review and approval by community CCB
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants